Juegos de Feral no arrancan (dlopen)

Descripcion

Los juegos portados a linux por Feral Interactive (F1 2017, tomb raider, life is strange...etc) no se inician

Explicacion

Este fallo se debe porque hay una función de la librería glibc que a partir de la versión 2.44 ha cambiado de nombre y al intentar ejecutar dichos juegos no encuentra ese simbolo en el código.

Si ejecutamos steam desde la consola e intentamos arrancar un juego veremos el siguiente error:

symbol lookup error: /home/manuel/.local/share/Steam/steamapps/common/F1 2017/bin/F12017: undefined symbol: __libc_dlopen_mode, version GLIBC_PRIVATE
Solucion

Para solucionar este problema necesitamos la siguiente librería:

liblibc_dlopen_mode.so

Y en el juego que nos esta dando problemas colocamos ese archivo dentro de la carpeta lib en la carpeta del juego (o tambien justo donde esté el ejecutable):

y declaramos el LD_PRELOAD con dicha librería

Alternativa

En vez de declarar el LD_PRELOAD como opción de lanzamiento en steam podemos añadirlo en el script de lanzamiento del juego, los juegos de feral tienen una opción llamada LD_PRELOAD_ADDITIONS, solo tenemos que indicar ahí el nombre del archivo:

En mi caso al declarar el LD_PRELOAD en steam no me llegaba a conectar el streaming al hacer remote play entre dos ordenadores de la red... todo lo demas funcionaba bien.

Tags

Steam | Feral | Juegos